/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package upeu.cepre.controller;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.AbstractList;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import upeu.cepre.business.*;
import upeu.cepre.model.*;

/**
 *
 * @author Elvis Zanguetsu
 */
@WebServlet(name = "TrabajadorController", urlPatterns = {"/TrabajadorController"})
public class TrabajadorController extends HttpServlet {

    /**
     * Processes requests for both HTTP
     * <code>GET</code> and
     * <code>POST</code> methods.
     *
     * @param request servlet request
     * @param response servlet response
     * @throws ServletException if a servlet-specific error occurs
     * @throws IOException if an I/O error occurs
     */
    String usuario;
    String contraseña;
    String url;
    String estado;
    String rol;
    String periodo;
    String trabajador;
    int opt;
    String sede;

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {



        AlumnoManager alumnoManag = new AlumnoManager();
        Alumno alumno = new Alumno();
        List<Alumno> listAlumno = new ArrayList<Alumno>();
        TrabajadorManager trabManajer = new TrabajadorManager();
        DetallePeriodoAlumnoManager detPerAlumnoManag = new DetallePeriodoAlumnoManager();
        DetallePeriodoAlumno detPerAlumno = new DetallePeriodoAlumno();
        List<DetallePeriodoAlumno> listDetallePeriodoAlumno = new ArrayList<DetallePeriodoAlumno>();
        DetallePeriodoTrabajadorManager detallePeriodoTrabajador = new DetallePeriodoTrabajadorManager();
        DetalleSedeTrabajadorManager detalleSedeTrabajadorManager = new DetalleSedeTrabajadorManager();
        DetallePeriodoSedeManager detallePeriodoSedeManager = new DetallePeriodoSedeManager();
        CarreraManager carreraManag = new CarreraManager();
        Carrera carrera = new Carrera();
        ExamenesManger examenesManag = new ExamenesManger();
        List<Examenes> examenes = new ArrayList<Examenes>();
        DetalleAlumnoExamenManager detalleAlumnoExamenmanag = new DetalleAlumnoExamenManager();
        DetallePeriodoSedeManager periodoSedeManag = new DetallePeriodoSedeManager();
        List<DetalleAlumnoExamen> detalleAlumnoExamenes = new ArrayList<DetalleAlumnoExamen>();
        DetallePeriodoCursoManager periodoCursoManag = new DetallePeriodoCursoManager();
        List<DetallePeriodoCurso> detallePeriodoCursos = new ArrayList<DetallePeriodoCurso>();
        SedeManager sedeManag = new SedeManager();
        DetalleAlumnoCursoManager detalleAlumnoCursoManag = new DetalleAlumnoCursoManager();
        List<DetalleAlumnoCurso> listAlumnoCurso = new ArrayList<DetalleAlumnoCurso>();
        PadreManager padreManag = new PadreManager();
        Padre padre = new Padre();
        DetalleAlumnoCurso detalleAlumnoCurso = new DetalleAlumnoCurso();


        periodo = request.getParameter("Periodo");

        sede = request.getParameter("Sede");

        usuario = request.getParameter("Usuario");

        trabajador = trabManajer.finByUser(usuario).getIdTrabajador();

        rol = detallePeriodoTrabajador.findByIdtrabajadorANDByIdperiodo(trabajador, periodo).getRol();

        String DPSD = detallePeriodoTrabajador.findByIdtrabajadorANDByIdperiodo(trabajador, periodo).getIdDetallePeriodoTrabajador();


        opt = Integer.parseInt(request.getParameter("opt"));

        switch (opt) {

            case 1: {



                request.getSession().setAttribute("ListCarrera", carreraManag.Report());
                response.sendRedirect("modulos/trabajador/alumno_form_add.jsp");
                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);


            }
            break;

            case 2: {

                String dsede = request.getParameter("Sede");
                String gperiodo = request.getParameter("Periodo");
                String id = alumnoManag.ObtenerId();
                //DetallePeriodoSede perdiodoSede = periodoSedeManag.finByIdPeriodoByIdSede(gperiodo, dsede);
                String idPadre = padreManag.ObtenerId();
                String idDetPerAlum = detPerAlumnoManag.ObtenerId();

                padre.setIdPadre(idPadre);
                padre.setApellidosNombres(request.getParameter("apellidosNombresPadres"));
                padre.setDni(request.getParameter("dniPadres"));
                padre.setDireccion(request.getParameter("direccionPadres"));
                padre.setTelefono(request.getParameter("telefonoPadres"));


                padreManag.Add(padre);


                alumno.setIdAlumno(id);
                alumno.setNombre(request.getParameter("nombre"));
                alumno.setApellidoPaterno(request.getParameter("apellidoPa"));
                alumno.setApellidoMaterno(request.getParameter("apellidoMa"));
                alumno.setFechaNacimiento(request.getParameter("fechaNacimiento"));
                alumno.setDni(request.getParameter("dni"));
                alumno.setDireccion(request.getParameter("direccion"));
                alumno.setTelefono(request.getParameter("telefono"));
                alumno.setEstado("Activo");
                alumno.setUsuario(null);
                alumno.setContraseña(null);
                alumno.setNacionalidad(request.getParameter("nacionalidad"));
                alumno.setLugarNacimiento(request.getParameter("lugarNacimiento"));
                alumno.setSexo(request.getParameter("sexo"));
                alumno.setEstadoCivil(request.getParameter("estadoCivil"));
                alumno.setEmail(request.getParameter("email"));
                alumno.setReligion(request.getParameter("religion"));
                alumno.setBautizado(request.getParameter("bautizado"));
                alumno.setDistrito(request.getParameter("distrito"));
                alumno.setProvincia(request.getParameter("provincia"));
                alumno.setDepartamento(request.getParameter("departamento"));
                alumno.setPais(request.getParameter("pais"));
                alumno.setNombreInstitucion(request.getParameter("nombreInstitucion"));
                alumno.setAñoEgreso(request.getParameter("añoEgreso"));
                alumno.setLugar(request.getParameter("ciudadLugar"));
                alumno.setTipoColegio(request.getParameter("tipoColegio"));
                alumno.setMedioInformacion(request.getParameter("medioInformacion"));
                alumno.setIdPadre(idPadre);




                alumnoManag.Add(alumno);


                detPerAlumno.setIdDetallePeriodoAlumno(idDetPerAlum);
                detPerAlumno.setIdPeriodo(periodo);
                detPerAlumno.setIdAlumno(id);
                detPerAlumno.setIdCarrera(request.getParameter("carrera"));
                detPerAlumno.setIdDetallePeriodoSede(periodoSedeManag.finByIdPeriodoByIdSede(gperiodo, detallePeriodoSedeManager.finById(dsede).getIdSede()).getIdDetallePeriodoSede());
                detPerAlumno.setCampus(request.getParameter("campus"));

                detPerAlumnoManag.Add(detPerAlumno);

                detalleAlumnoCursoManag.Add(idDetPerAlum, periodo);
                detalleAlumnoExamenmanag.Add(idDetPerAlum, periodo);



                List<DetallePeriodoAlumno> detallealumnos = new ArrayList<DetallePeriodoAlumno>();
                detallealumnos = detPerAlumnoManag.findByIdPeriodoIdSede(gperiodo, periodoSedeManag.finByIdPeriodoByIdSede(gperiodo, detallePeriodoSedeManager.finById(dsede).getIdSede()).getIdDetallePeriodoSede());
                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);

                System.out.println("  --" + rol
                        + "--  ");
                System.out.println("  --" + usuario
                        + "--  ");
                System.out.println("  --" + periodo
                        + "--  ");
                System.out.println("  --" + sede
                        + "--  ");
                request.getSession().setAttribute("ListDetalleAlumnos", detallealumnos);
                response.sendRedirect("modulos/trabajador/trabajador_main.jsp");


            }
            break;
            case 3: {
                String PerSede = detallePeriodoSedeManager.finById(detalleSedeTrabajadorManager.finByIdPerTrabajador(DPSD).getIdDetallePeriodoSede()).getIdDetallePeriodoSede();
                listDetallePeriodoAlumno = detPerAlumnoManag.findByIdPeriodoIdSede(periodo, PerSede);

                request.getSession().setAttribute("ListDetalleAlumnos", listDetallePeriodoAlumno);

                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", PerSede);
                response.sendRedirect("modulos/trabajador/trabajador_main.jsp");
            }
            break;
            case 4: {
                String PerSede = detallePeriodoSedeManager.finById(detalleSedeTrabajadorManager.finByIdPerTrabajador(DPSD).getIdDetallePeriodoSede()).getIdDetallePeriodoSede();
                examenes = examenesManag.findByIdPeriodo(periodo);
                request.getSession().setAttribute("ListExamenes", examenes);
                listDetallePeriodoAlumno = detPerAlumnoManag.findByIdPeriodoIdSede(periodo, PerSede);
                request.getSession().setAttribute("ListAlumnos", listDetallePeriodoAlumno);
                detalleAlumnoExamenes = detalleAlumnoExamenmanag.Report();
                request.getSession().setAttribute("ListPeriodoAlumnosExamenes", detalleAlumnoExamenes);
                response.sendRedirect("modulos/trabajador/trabajador_report_examen_semanal.jsp");
                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);
            }
            break;
            case 5: {
                String PerSede = detallePeriodoSedeManager.finById(detalleSedeTrabajadorManager.finByIdPerTrabajador(DPSD).getIdDetallePeriodoSede()).getIdDetallePeriodoSede();

                listDetallePeriodoAlumno = detPerAlumnoManag.findByIdPeriodoIdSede(periodo, PerSede);
                detallePeriodoCursos = periodoCursoManag.findByIdPeriodo(periodo);
                listAlumnoCurso = detalleAlumnoCursoManag.Report();


                request.getSession().setAttribute("ListAlumnos", listDetallePeriodoAlumno);
                request.getSession().setAttribute("ListPeriodoCursos", detallePeriodoCursos);
                request.getSession().setAttribute("ListAlumnoCurso", listAlumnoCurso);

                response.sendRedirect("modulos/trabajador/trabajador_report_cursos_notas.jsp");
                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);
            }
            break;
            case 6: {
                String PerSede = detallePeriodoSedeManager.finById(detalleSedeTrabajadorManager.finByIdPerTrabajador(DPSD).getIdDetallePeriodoSede()).getIdDetallePeriodoSede();
                List<DetallePeriodoAlumno> listDetallePeriodoAlumno2 = new ArrayList<DetallePeriodoAlumno>();
                listDetallePeriodoAlumno2 = detPerAlumnoManag.findByIdPeriodoIdSede(periodo, PerSede);

                response.sendRedirect("modulos/trabajador/trabajador_report_consolidado.jsp");
                request.getSession().setAttribute("ListAlumnos", listDetallePeriodoAlumno2);
                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);
            }
            break;
            case 7: {
                String idDetPerAlum = request.getParameter("idDetallePeriodoAlumno");
                // detPerAlumno = (DetallePeriodoAlumno) detPerAlumnoManag.findById(idDetPerAlum);


                detPerAlumno = detPerAlumnoManag.finById(idDetPerAlum);
                System.out.println(" ..!" + detPerAlumno.getNotaCursosFinal() + "!--");
                System.out.println(" ..!" + detPerAlumno.getIdDetallePeriodoSede() + "!--");
                System.out.println(" ..!" + idDetPerAlum + "!--");

                System.out.println(" -----------------------------------------");

                System.out.println(detPerAlumno.getIdDetallePeriodoAlumno());
                System.out.println(detPerAlumno.getIdPeriodo());
                System.out.println(detPerAlumno.getIdAlumno());
                System.out.println(detPerAlumno.getNotaCursosFinal());
                System.out.println(detPerAlumno.getNotaExamenSemanalFinal());
                System.out.println(detPerAlumno.getNotaExamenFinal());
                System.out.println(detPerAlumno.getPagoMatricula());
                System.out.println(detPerAlumno.getPagoEducacion());
                System.out.println(detPerAlumno.getPagoIngreso());
                System.out.println(detPerAlumno.getNumCuotas());
                System.out.println(detPerAlumno.getIdCarrera());
                System.out.println(detPerAlumno.getIdDetallePeriodoSede());
                System.out.println(detPerAlumno.getCampus());


                alumno = alumnoManag.finById(detPerAlumno.getIdAlumno());

                System.out.println(" -----------------------------------------");
                System.out.println(alumno.getIdAlumno());
                System.out.println(alumno.getNombre());
                System.out.println(alumno.getApellidoPaterno());
                System.out.println(alumno.getApellidoMaterno());
                System.out.println(alumno.getFechaNacimiento());
                System.out.println(alumno.getDni());
                System.out.println(alumno.getDireccion());
                System.out.println(alumno.getTelefono());
                System.out.println(alumno.getEstado());
                System.out.println(alumno.getUsuario());
                System.out.println(alumno.getContraseña());
                System.out.println(alumno.getNacionalidad());
                System.out.println(alumno.getLugarNacimiento());
                System.out.println(alumno.getSexo());
                System.out.println(alumno.getEstadoCivil());
                System.out.println(alumno.getEmail());
                System.out.println(alumno.getReligion());
                System.out.println(alumno.getBautizado());
                System.out.println(alumno.getDistrito());
                System.out.println(alumno.getProvincia());
                System.out.println(alumno.getDepartamento());
                System.out.println(alumno.getPais());
                System.out.println(alumno.getNombreInstitucion());
                System.out.println(alumno.getAñoEgreso());
                System.out.println(alumno.getLugar());
                System.out.println(alumno.getTipoColegio());
                System.out.println(alumno.getMedioInformacion());
                System.out.println(alumno.getIdPadre());

                System.out.println(" -----------------------------------------");


                System.out.println(" ..!" + detPerAlumno.getIdAlumno() + "!--");
                padre = padreManag.finById(alumno.getIdPadre());
                carrera = carreraManag.finById(detPerAlumno.getIdCarrera());

                request.getSession().setAttribute("Alumno", alumno);
                System.out.println("--" + alumno.getBautizado() + "");
                request.getSession().setAttribute("DetPerAlumno", detPerAlumno);
                request.getSession().setAttribute("Padre", padre);

                request.getSession().setAttribute("ListCarrera", carreraManag.Report());
                response.sendRedirect("modulos/trabajador/trabajador_alumno_form_edit.jsp");


                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);
            }
            break;
            case 8: {
                String dsede = request.getParameter("Sede");
                String gperiodo = request.getParameter("Periodo");

                DetallePeriodoSede perdiodoSede = periodoSedeManag.finByIdPeriodoByIdSede(gperiodo, dsede);


                padre.setIdPadre(request.getParameter("idPadre"));
                padre.setApellidosNombres(request.getParameter("apellidosNombresPadres"));
                padre.setDni(request.getParameter("dniPadres"));
                padre.setDireccion(request.getParameter("direccionPadres"));
                padre.setTelefono(request.getParameter("telefonoPadres"));

                padreManag.Update(padre);


                alumno.setIdAlumno(request.getParameter("idAlumno"));
                alumno.setNombre(request.getParameter("nombre"));
                alumno.setApellidoPaterno(request.getParameter("apellidoPa"));
                alumno.setApellidoMaterno(request.getParameter("apellidoMa"));
                alumno.setFechaNacimiento(request.getParameter("fechaNacimiento"));
                alumno.setDni(request.getParameter("dni"));
                alumno.setDireccion(request.getParameter("direccion"));
                alumno.setTelefono(request.getParameter("telefono"));
                alumno.setEstado("Activo");
                alumno.setUsuario(null);
                alumno.setContraseña(null);
                alumno.setNacionalidad(request.getParameter("nacionalidad"));
                alumno.setLugarNacimiento(request.getParameter("lugarNacimiento"));
                alumno.setSexo(request.getParameter("sexo"));
                alumno.setEstadoCivil(request.getParameter("estadoCivil"));
                alumno.setEmail(request.getParameter("email"));
                alumno.setReligion(request.getParameter("religion"));
                alumno.setBautizado(request.getParameter("bautizado"));
                alumno.setDistrito(request.getParameter("distrito"));
                alumno.setProvincia(request.getParameter("provincia"));
                alumno.setDepartamento(request.getParameter("departamento"));
                alumno.setPais(request.getParameter("pais"));
                alumno.setNombreInstitucion(request.getParameter("nombreInstitucion"));
                alumno.setAñoEgreso(request.getParameter("añoEgreso"));
                alumno.setLugar(request.getParameter("ciudadLugar"));
                alumno.setTipoColegio(request.getParameter("tipoColegio"));
                alumno.setMedioInformacion(request.getParameter("medioInformacion"));
                alumno.setIdPadre(request.getParameter("idPAdre"));



                alumnoManag.Update(alumno);

                DetallePeriodoAlumno Box = new DetallePeriodoAlumno();
                Box = detPerAlumnoManag.finById(request.getParameter("idDetallePeriodoAlumno"));
                detPerAlumno.setIdDetallePeriodoAlumno(request.getParameter("idDetallePeriodoAlumno"));
                detPerAlumno.setIdPeriodo(periodo);
                detPerAlumno.setIdAlumno(request.getParameter("idAlumno"));

                detPerAlumno.setNotaCursosFinal(Box.getNotaCursosFinal());
                detPerAlumno.setNotaExamenSemanalFinal(Box.getNotaExamenSemanalFinal());
                detPerAlumno.setNotaExamenFinal(Box.getNotaExamenFinal());
                detPerAlumno.setPagoMatricula(Box.getPagoMatricula());
                detPerAlumno.setPagoEducacion(Box.getPagoEducacion());
                detPerAlumno.setPagoIngreso(Box.getPagoIngreso());
                detPerAlumno.setNumCuotas(Box.getNumCuotas());

                detPerAlumno.setIdCarrera(request.getParameter("carrera"));
                detPerAlumno.setIdDetallePeriodoSede(dsede);
                detPerAlumno.setCampus(request.getParameter("campus"));

                detPerAlumnoManag.Update(detPerAlumno);




                List<DetallePeriodoAlumno> detallealumnos = new ArrayList<DetallePeriodoAlumno>();
                detallealumnos = detPerAlumnoManag.findByIdPeriodoIdSede(gperiodo, dsede);
                request.getSession().setAttribute("ListDetalleAlumnos", detallealumnos);
                response.sendRedirect("modulos/trabajador/trabajador_main.jsp");

                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);

            }
            break;
            case 9: {

                String idDetallePeriodoAlumno = request.getParameter("idDetallePeriodoAlumno");
                listAlumnoCurso = detalleAlumnoCursoManag.findByIdPeriodoAlumno(idDetallePeriodoAlumno);
                request.getSession().setAttribute("idDetallePeriodoAlumno", idDetallePeriodoAlumno);
                request.getSession().setAttribute("ListDetalleAlumnoCurso", listAlumnoCurso);
                response.sendRedirect("modulos/trabajador/trabajador_alumno_form_add_notacurso.jsp");

            }
            break;
            case 10: {
                String idDetallePeriodoAlumno = request.getParameter("idDetallePeriodoAlumno");
                listAlumnoCurso = detalleAlumnoCursoManag.findByIdPeriodoAlumno(idDetallePeriodoAlumno);
                for (int y = 0; y < listAlumnoCurso.size(); y++) {


                    detalleAlumnoCursoManag.UpdateNotas(listAlumnoCurso.get(y).getIdDetalleAlumnoCurso(), request.getParameter(listAlumnoCurso.get(y).getIdDetalleAlumnoCurso()));

                }

                int lab = 0;
                listAlumnoCurso = detalleAlumnoCursoManag.findByIdPeriodoAlumno(idDetallePeriodoAlumno);

                for (int j = 0; j < listAlumnoCurso.size(); j++) {

                    lab = Integer.parseInt(listAlumnoCurso.get(j).getNotaCurso()) + lab;

                }

                detPerAlumnoManag.UpdateNotaCursoFinal(idDetallePeriodoAlumno, Integer.toString(lab / listAlumnoCurso.size()));

                
                
                String PerSede = detallePeriodoSedeManager.finById(detalleSedeTrabajadorManager.finByIdPerTrabajador(DPSD).getIdDetallePeriodoSede()).getIdDetallePeriodoSede();

                listDetallePeriodoAlumno = detPerAlumnoManag.findByIdPeriodoIdSede(periodo, PerSede);
                
                for(int h =0;h<listDetallePeriodoAlumno.size();h++){
                
                    System.out.println("yyyy ---"+listDetallePeriodoAlumno.get(h).getNotaCursosFinal() +"--- xxxxx");
                }
                
                detallePeriodoCursos = periodoCursoManag.findByIdPeriodo(periodo);
                listAlumnoCurso = detalleAlumnoCursoManag.Report();


                request.getSession().setAttribute("ListAlumnos", listDetallePeriodoAlumno);
                request.getSession().setAttribute("ListPeriodoCursos", detallePeriodoCursos);
                request.getSession().setAttribute("ListAlumnoCurso", listAlumnoCurso);

                response.sendRedirect("modulos/trabajador/trabajador_report_cursos_notas.jsp");
                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);

            }
            break;

            case 11: {

                String idDetallePeriodoAlumno = request.getParameter("idDetallePeriodoAlumno");
                detalleAlumnoExamenes = detalleAlumnoExamenmanag.findByIdPeriodoAlumno(idDetallePeriodoAlumno);
                request.getSession().setAttribute("idDetallePeriodoAlumno", idDetallePeriodoAlumno);
                request.getSession().setAttribute("ListDetalleAlumnoExamen", detalleAlumnoExamenes);
                response.sendRedirect("modulos/trabajador/trabajador_alumno_form_add_notaExamenSemanal.jsp");

            }
            break;
            case 12: {


                String idDetallePeriodoAlumno = request.getParameter("idDetallePeriodoAlumno");
                detalleAlumnoExamenes = detalleAlumnoExamenmanag.findByIdPeriodoAlumno(idDetallePeriodoAlumno);
                for (int y = 0; y < detalleAlumnoExamenes.size(); y++) {


                    detalleAlumnoExamenmanag.UpdateNotas(detalleAlumnoExamenes.get(y).getIdDetalleAlumnoExamen(), request.getParameter(detalleAlumnoExamenes.get(y).getIdDetalleAlumnoExamen()));

                }
                int lab = 0;
                detalleAlumnoExamenes = detalleAlumnoExamenmanag.findByIdPeriodoAlumno(idDetallePeriodoAlumno);

                for (int y = 0; y < detalleAlumnoExamenes.size(); y++) {



                    lab = Integer.parseInt(detalleAlumnoExamenes.get(y).getNotaExamen()) + lab;

                }

                lab = lab / detalleAlumnoExamenes.size();

                System.out.println("-x-" + detalleAlumnoExamenes.size() + "-x-");

                detPerAlumnoManag.UpdateNotaExamenFinal(idDetallePeriodoAlumno, Integer.toString(lab));

                String PerSede = detallePeriodoSedeManager.finById(detalleSedeTrabajadorManager.finByIdPerTrabajador(DPSD).getIdDetallePeriodoSede()).getIdDetallePeriodoSede();
                examenes = examenesManag.findByIdPeriodo(periodo);

                request.getSession().setAttribute("ListExamenes", examenes);
                listDetallePeriodoAlumno = detPerAlumnoManag.findByIdPeriodoIdSede(periodo, PerSede);
                request.getSession().setAttribute("ListAlumnos", listDetallePeriodoAlumno);

                detalleAlumnoExamenes = detalleAlumnoExamenmanag.Report();
                request.getSession().setAttribute("ListPeriodoAlumnosExamenes", detalleAlumnoExamenes);
                response.sendRedirect("modulos/trabajador/trabajador_report_examen_semanal.jsp");
                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);

            }
            break;

            case 13: {
                String idDetPerAlum = request.getParameter("idDetallePeriodoAlumno");
                detPerAlumno = detPerAlumnoManag.finById(idDetPerAlum);
                System.out.println(" ..!" + detPerAlumno.getNotaCursosFinal() + "!--");
                System.out.println(" ..!" + detPerAlumno.getIdDetallePeriodoSede() + "!--");
                System.out.println(" ..!" + idDetPerAlum + "!--");


                alumno = alumnoManag.finById(detPerAlumno.getIdAlumno());

                padre = padreManag.finById(alumno.getIdPadre());
                carrera = carreraManag.finById(detPerAlumno.getIdCarrera());

                request.getSession().setAttribute("Alumno", alumno);
                System.out.println("--" + alumno.getBautizado() + "");
                request.getSession().setAttribute("DetPerAlumno", detPerAlumno);
                request.getSession().setAttribute("Padre", padre);

                request.getSession().setAttribute("ListCarrera", carreraManag.Report());
                response.sendRedirect("modulos/trabajador/trabajador_alumno_datos.jsp");


                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);
            }
            break;


            case 14: {


                String PerSede = detallePeriodoSedeManager.finById(detalleSedeTrabajadorManager.finByIdPerTrabajador(DPSD).getIdDetallePeriodoSede()).getIdDetallePeriodoSede();
                listDetallePeriodoAlumno = detPerAlumnoManag.findByIdPeriodoIdSede(periodo, PerSede);
                request.getSession().setAttribute("ListAlumnos", listDetallePeriodoAlumno);
                response.sendRedirect("modulos/trabajador/trabajador_main.jsp");
                request.getSession().setAttribute("rol", rol);
                request.getSession().setAttribute("usuario", usuario);
                request.getSession().setAttribute("periodo", periodo);
                request.getSession().setAttribute("sede", sede);
            }
            break;


        }















    }

    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
    /**
     * Handles the HTTP
     * <code>GET</code> method.
     *
     * @param request servlet request
     * @param response servlet response
     * @throws ServletException if a servlet-specific error occurs
     * @throws IOException if an I/O error occurs
     */
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

    /**
     * Handles the HTTP
     * <code>POST</code> method.
     *
     * @param request servlet request
     * @param response servlet response
     * @throws ServletException if a servlet-specific error occurs
     * @throws IOException if an I/O error occurs
     */
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

    /**
     * Returns a short description of the servlet.
     *
     * @return a String containing servlet description
     */
    @Override
    public String getServletInfo() {
        return "Short description";
    }// </editor-fold>
}
